home *** CD-ROM | disk | FTP | other *** search
/ Aminet 2 / Aminet AMIGA CDROM (1994)(Walnut Creek)[Feb 1994][W.O. 44790-1].iso / Aminet / gfx / misc / PCHGLib12.lha / Mostra109.lha / Mostra.doc < prev    next >
Text File  |  1992-11-01  |  18KB  |  447 lines

  1.  
  2.  
  3. *
  4.  
  5.    This file describes `Mostra' 1.09, a shareware IFF utility featuring
  6. real-time unpacking scroll, dozens of options, "smart" analysis of any
  7. IFF file (FORMs, LISTs,...  also nested ILBM!), total control over
  8. display modes, simple slideshow processing, pattern matching,
  9. multipalette, double buffering, fast decompression, color cycling,
  10. TeXdocs, startup files for easy custom configurations and complete WB
  11. support.
  12.  
  13.  
  14. Introduction
  15. *************
  16.  
  17.    `Mostra' is an IFF ILBM viewer that can process *any* IFF ILBM file;
  18. this means not only IFF ILBM FORMs, but also nested ILBM, FTXT, FORMs,
  19. CATs, LISTs and PROPs. It has become reknown in the Amiga community for
  20. both its robustness and its flexibility.
  21.  
  22.    Any design requires tradeoffs: `Mostra' tries to give you a good
  23. balance of program size (less than 15K), speed (optimized assembler
  24. decompression routines) and features. It tries to be enough smart to
  25. have always reasonable defaults, but also lets you force any aspect of
  26. the display, such as resolution and video flags. While it is not
  27. possible to foresee every possible race condition, `Mostra' should be
  28. able to cope with any reasonable ILBM file.
  29.  
  30.    `Mostra' currently relies on ARP v39 in order to work. Thus, the
  31. `arp.library' file has to be in your `libs:' directory if you want to
  32. run `Mostra'. Otherwise, a message will be displayed, and `Mostra' will
  33. refuse to run. (Without ARP's powerful functions, `Mostra' would have
  34. never been released.) However, `Mostra' 2.0 will work only under
  35. Release 2 and will not need ARP.
  36.  
  37.    One of the major features in this release is support for
  38. multi-palette pictures, i.e., pictures with the new PCHG chunk which
  39. should substitute the old CTBL and SHAM chunks. See the `Changes.doc'
  40. file for additional informations. SHAM is still supported, but the
  41. support of CTBL pictures via external call has been dropped since it
  42. was shown to be unreliable.
  43.  
  44.    The other major improvement is complete support for the AGA chip set.
  45.  
  46.  
  47. Syntax
  48. *******
  49.  
  50. `Mostra' can be called both from the CLI and from the Workbench. It is
  51. also a pure program, i.e., it can be made resident.
  52.  
  53.  
  54. Command Line Usage
  55. ===================
  56.  
  57.    To get the command line syntax in AmigaDOS style, type:
  58.      M ?
  59.  
  60. This will produce the input template:
  61.      Files/...,A=All/S,R=Repeat/S,Q=Quiet/S,NoFastDraw/S,
  62.      C=Center/S,B=BlackBackground/S,W=Width/K,H=Height/K,Cycle/S,
  63.      Secs/K,Fade/K,NO=NoStartup/S,Batch/K,LockPic/S,
  64.      N=NoMouse/S,F=FreeMouse/S,LockKeys/S,NA=NoActivate/S,DB=DoubleBuffering/S,
  65.      Hires/S,Lace/S,Lores/S,NoLace/S,HAM/S,Halfbrite/S
  66.  
  67. If you ask for more help by typing `?' again, you will see:
  68.      Mostra 1.09 (C) 1990,1991,1992 Sebastiano Vigna
  69.      Usage: M <wildcards [...] | !> [All] [Repeat] [Quiet] [NoFastDraw]
  70.      [Center] [BlackBackground] [Width n] [Height n] [Cycle]
  71.      [Secs time] [Fade speed] [NoStartup] [Batch file] [LockPic]
  72.      [NoMouse] [FreeMouse] [LockKeys] [NoActivate] [DoubleBuffering]
  73.      [Hires | Lores] [Lace | NoLace] [HAM | Halfbrite]
  74.  
  75. The same help is displayed if you call `Mostra' with no arguments.
  76.  
  77.    `Mostra''s first argument is a list of patterns (or file names) as
  78. long as you want; you will get every picture whose name matches one of
  79. the patterns.
  80.  
  81.    Alternatively, you can type only the `!' character, and `Mostra'
  82. will display the ARP file requester, allowing you to search for the
  83. picture you want to show.
  84.  
  85.  
  86. Workbench Usage
  87. ================
  88.  
  89.    When `Mostra' is called from Workbench without any argument icon, it
  90. will pop the file requester and will allow you to select pictures to
  91. show until you select `Cancel' or close the file requester window.
  92. Alternatively, you can SHIFT-select multiple icons together with
  93. `Mostra''s one, or you can change the default tool of your pictures.
  94. For details about this, see Startup Tool Types. Note that if you select
  95. an IFF CAT or LIST you will have an automatic little slideshow.
  96.  
  97.  
  98. Keyboard Usage
  99. ===============
  100.  
  101.    Once you are looking at the picture you selected, you can exit by
  102. moving the mouse pointer to the very top of the screen and pressing the
  103. right button (you can also press the RETURN, SPACE or ESCAPE keys). You
  104. can drag or depth arrange the screen with the left mouse button (the
  105. gadget(s) are invisible, but they really are there!). TAB will toggle
  106. on/off color cycling. To stop pattern matching or IFF scanning use
  107. `CTRL-C' at any moment.
  108.  
  109.    If the screen size is less than the size of the picture, you can
  110. move around with cursor keys alone (moving by 8 pixels) or in
  111. combination with the SHIFT (a screenful minus 16 pixels), ALT (which
  112. brings you to the borders), or CTRL (16 pixels) keys. A noteworthy
  113. feature of `Mostra' is that the picture is *not* decrunched all at one
  114. time in a very large chunk of memory; instead, a fast LM routine
  115. decrunches the file in real-time every time you move (the routine could
  116. be faster, but it has lots of controls to get rid of damaged IFF BODY
  117. chunks; safety always first). This is not as fast as the memory-eating
  118. method, but I think it's *much* better. Very large pictures (like
  119. 800x900) will be shown in a full screen (generated on the fly at
  120. Workbench size) which you can move around. Overscan pictures will
  121. retain their size of it's not greater than 362x283 lo-res pixels
  122. (362x241 on a NTSC Amiga). For hi-res pictures, there is also a 704
  123. pixel width limit due to Intuition (724 under Release 2). Small brushes
  124. will be shown in a minimum 256x128 pixel screen. Of course, moving
  125. vertically with multi-palette pictures involves a high system overhead,
  126. since Copper lists are continuously built and deleted.
  127.  
  128.    A weird effect of this method is that you can see pictures that
  129. can't even be *loaded* into your Amiga. Let's suppose you have a really
  130. crunched picture; the BODY chunk and a 256x256 lo-res screen could take
  131. much less space than the decrunched picture, so you could create
  132. pictures that only `Mostra' could let you see in all of their parts.
  133. Why you would want to do this, well, that's another matter.
  134.  
  135.  
  136. Options
  137. ========
  138.  
  139.    This list describes all the options available in `Mostra'. The
  140. letters between parentheses denote availability of a shortening.
  141. Options can be put anywhere on the command line, or in Tool Types (see
  142. Startup Tool Types).
  143.  
  144. `All (A)'
  145.      forces a recursive scan of all of the subdirectories during the
  146.      wildcard search.
  147.  
  148. `Repeat (R)'
  149.      will endlessly restart from the first pattern when it has finished
  150.      with the last; if you used the `!' line arguments, the file
  151.      requester will pop up after every picture until you `Cancel' or
  152.      close.
  153.  
  154. `Quiet (Q)'
  155.      turns off all messages except in case of error.
  156.  
  157. `NoFastDraw'
  158.      leaves the program at priority 0; by default, `Mostra' will
  159.      surround the BODY decrunching operations with a `SetTaskPri(1)'.
  160.      This will not lock the system, but in a multitasking situation
  161.      `Mostra' will perform quickly when needed.
  162.  
  163. `Center (C)'
  164.      will force the screen to be centered (640x200 pictures on PAL
  165.      screens look so ugly...) and will use overscan if necessary. Note
  166.      that if you move the screen, and you are not under Release 2, the
  167.      centering will go away.
  168.  
  169. `BlackBackground (B)'
  170.      will create a 0-bitplane black screen that will stay until you saw
  171.      the last picture. This is for aesthetic purposes only (note that
  172.      no Chip memory will be used).
  173.  
  174. `Width (W)'
  175. `Height (H)'
  176.      want an argument that specifies a dimension of the viewing screen.
  177.      However, `Mostra' is an intelligent program, and will almost always
  178.      find the correct screen by itself. *Warning*:  dimensions allowed
  179.      are from 64 to 1024, at your own risk. Your Amiga won't crash, but
  180.      weird things can happen...
  181.  
  182. `Cycle'
  183.      will automatically activate color cycling on every picture.
  184.      Usually this happens only by request, through TAB.
  185.  
  186. `Secs'
  187.      must be followed by a number between 0 and 1000 (the zero delay
  188.      was a request from a BIXen). `Mostra' will display each picture
  189.      for the number of seconds specified, but you can skip using the
  190.      mouse or the keyboard as usual (see Keyboard Usage) or stop the
  191.      show with `CTRL-C'. Cursor keys are disabled. Greatly reworked on
  192.      Warren's request.
  193.  
  194. `Fade'
  195.      lets you specify a speed for pictures to fade in and out. Valid
  196.      numbers are 1 to 4, with four the slowest. Note that HAM pictures
  197.      can't be faded.
  198.  
  199. `NoMouse (N)'
  200.      will hide the mouse pointer while `Mostra' is displaying a picture.
  201.  
  202. `FreeMouse (F)'
  203.      will let you pass from one picture to another by clicking either
  204.      of the mouse buttons at any position on the screen.
  205.  
  206. `LockKeys'
  207.      will discard any input from the keyboard during the display. You
  208.      must use the mouse to pass to the following picture. Note that if
  209.      `FreeMouse' is not activated, the only way to go is clicking the
  210.      right mouse button while the mouse pointer is at the top of the
  211.      screen.
  212.  
  213. `LockPic'
  214.      will lock the picture displayed. You won't be able to scroll
  215.      around, but the memory in which the file is loaded will be
  216.      immediately freed after the decompression, thus minimizing the
  217.      memory usage.
  218.  
  219. `NoActivate (NA)'
  220.      will inhibit the activation of the picture screens, so you can
  221.      keep on typing on your current screen. This was a request from Tom.
  222.  
  223. `DoubleBuffering (DB)'
  224.      sets a double buffering show mode:  while a new picture is being
  225.      loaded you will see the old one, no Workbench pop-up or black
  226.      screens. It eats lots of memory, too. Again, a request from Tom.
  227.      (Note:  it's canceled if you call the file requester.)
  228.  
  229. `Hires'
  230. `Lores'
  231. `Lace'
  232. `NoLace'
  233. `HAM'
  234. `HalfBrite'
  235.      force all screens to be in the respective mode (note that if
  236.      `Mostra' finds a six bitplane picture with no CAMG chunk, it won't
  237.      set the `HAM' flag by default). These flags are dumb, that is,
  238.      they will do exactly what you say, even if it is meaningless.
  239.      However, if you use both `HalfBrite' and `HAM' together, only the
  240.      former will take place.
  241.  
  242.    The `NoStartup' and `Batch' options will be discussed later, in
  243. Startup Files.
  244.  
  245.  
  246. Examples
  247. =========
  248.  
  249.    And now, some examples:
  250.  
  251.      M MyPics:* Secs 5 Fade 1 NoMouse BlackBackground Repeat Center All
  252.  
  253. will generate a slide show of the pictures in the `MyPics:' directory
  254. and in all its subdirectories, centered and with no mouse pointer
  255. hanging around. In order to stop the slide show, you must press
  256. `CTRL-C'.
  257.  
  258.      M df0:*.image df0:pictures/*.pic Hires Lace
  259.  
  260. will show the files ending with `.image' in the directory `df0:' and
  261. the files ending with `.pic' in the directory `df0:pictures'. `Mostra'
  262. will be forced to use high resolution, interlaced screens. Setting the
  263. `Hires' flag on pictures with more than 4 bitplanes usually leads you
  264. to see absolutely nothing.
  265.  
  266.      M dh0:hirespic Lores NoLace
  267.  
  268. will show a hi-res picture in lo-res ("zooming in"). You can move
  269. around with the cursor keys as described above.
  270.  
  271.    `Width' and `Height' can be useful when you have a picture that
  272. cannot be displayed because there's not enough Chip RAM (you get the
  273. `Can't open Screen' error message). In such a case, try:
  274.  
  275.      M pic Width 128 Height 128
  276.  
  277. This will usually allow you to at least get a peek at something.
  278.  
  279.  
  280. Advanced Features
  281. ******************
  282.  
  283.    For maximum flexibility, `Mostra' allows you to use "startup files"
  284. and "startup Tool Types", with which you can configure the program to
  285. suit your tastes.
  286.  
  287.  
  288. Startup Files
  289. ==============
  290.  
  291.    There is a standard startup file, called `S:Startup-Mostra'.
  292. `Mostra' will search for it when run from the CLI. The format of this
  293. file is *exactly* the same as the `Mostra''s line format minus the
  294. command name. Commands may be spread out over several lines or gathered
  295. together onto a single line. Every switch or keyword in the startup file
  296. will act as a default, and will be toggled or superseded by any command
  297. line arguments. Command line switches will act as toggles (if your
  298. startup file has the keyword `All' and you say `M * All', you *won't* go
  299. into subdirectories), while keywords simply assert the new value (if you
  300. have `Fade 1' in your startup file and you say `Fade 3' in the command
  301. line, your pictures will be faded at speed 3).
  302.  
  303.    Two options concern startup files:
  304.  
  305. `NoStartup (NO)'
  306.      inhibits the search for startup files, useful if you have one and
  307.      you want to specify your options from scratch.
  308.  
  309. `Batch'
  310.      wants a complete path/filename that `Mostra' will use as startup
  311.      file.
  312.  
  313.  
  314. Startup Tool Types
  315. ===================
  316.  
  317.    From the Workbench side, you can write the startup options in the
  318. Tool Types of `Mostra''s icon, and it will use them. The format is the
  319. same of `Startup-Mostra'. Please note that `Fade=1', `Width=352' are
  320. valid, but `FreeMouse=ON' is not; use only `FreeMouse'.
  321.  
  322.    Or you can set the first Tool Type of a project icon to `STARTUP' and
  323. put your options in the following lines; the project picture file will
  324. be shown with those options when you double-click its icon. You can do
  325. the same thing with an icon that has no related file, and put some
  326. wildcards in the Tool Type. The wildcards will then be shown with those
  327. options. If you don't put in wildcards, you get a "style" icon;  you can
  328. SHIFT-click some icons, `SHIFT'-click the "style" icon (in *this*
  329. order) and then SHIFT-double-click `Mostra''s icon (or directly
  330. SHIFT-double-click the last icon, if its default tool is `Mostra'): 
  331. you will see the selected picture files with the options specified in
  332. the style icon. The style icon by itself will pop up the file
  333. requester. Please note that even an icon with wildcards can be used as a
  334. style icon because multiple selections supersede wildcards.
  335.  
  336.    I know, it seems a little twisted, but using it you'll find,
  337. instead, that it's the way you'd think.
  338.  
  339.    *Warning*:  strange interactions can take place. If you have some
  340. picture icons, and you SHIFT-click all but one of them and then you
  341. SHIFT-double-click the last one *and* the last picture icon you clicked
  342. had some `STARTUP' options, you will see *all* of the pictures with
  343. those options. Right?
  344.  
  345.    For curious/tech/interested people, here is the exact algorithm:
  346.  
  347.   1. If `sm_NumArgs>1' (the user started `Mostra' with al least an icon
  348.      argument), check if `sm_ArgList[1]' (the first real argument) has
  349.      Tool Types with first Tool Type `STARTUP'. If so, scan the whole
  350.      Tool Types list like a command line, accepting mixed commands on a
  351.      single Tool Type as well as separated commands in separated Tool
  352.      Types.
  353.  
  354.   2. If the first step goes wrong, check the `Mostra' icon Tool Types,
  355.      and take them as a command line. (Note:  `STARTUP' is not
  356.      requested.)
  357.  
  358.   3. Now, if `sm_NumArgs>1', check every `sm_ArgList[i]' with `i>0' and
  359.      if there is a related file (*not* a `.info' file!) generate a list
  360.      of arguments as if the user entered them manually, *superseding*
  361.      eventual filenames/wildcards found in the previous steps.
  362.  
  363.  
  364. Startup Examples
  365. =================
  366.  
  367.    Now, examples, by means of common problems:
  368.  
  369.    * "I have a hundred pictures on my 360M hard disk, and I've organized
  370.      them in a few groups. How can I make simple slideshows, with each
  371.      group separate?"
  372.  
  373.      Simple: create a project icon for each group, and add a Tool Type
  374.      `STARTUP'. Then add a Tool Type like `PICS:Group1/* All Secs 5
  375.      Center' to choose your options, set the default tool to `C:M' (or
  376.      wherever you put it) and double-click (of course, this must be
  377.      done with every group icon). Don't give the icons the same name as
  378.      a directory, or `Mostra' will collapse in confusion.
  379.  
  380.    * "I want to always see the black screen when I start from WB."
  381.  
  382.      Set a `Mostra' Tool Type to `BlackBackground'.
  383.  
  384.    * "I have some pictures. Sometimes I want to see a few of them with a
  385.      full screen and no mouse, sometimes with a 128x128 screen,
  386.      sometimes centered."
  387.  
  388.      Create three "style" icons. Each icon must have as its first Tool
  389.      Type `STARTUP', and the following ones must be something like
  390.      `NoMouse', `Width 128 Height 128' and `Center'. The default tool
  391.      must be `C:M'. When you want to see in a certain style,
  392.      `SHIFT'-click the picture icons and *then* `SHIFT'-double-click
  393.      the style icon you desire.
  394.  
  395.    * "I like to click my pics one at a time, each one with different
  396.      options. I'd like also to see them in irregular groups, each
  397.      picture with its options."
  398.  
  399.      You need a psycho-analyst, not `Mostra'.
  400.  
  401.  
  402. Acknowledgments
  403. ****************
  404.  
  405.    I wish to thank some people, first of all the ARP team for the
  406. arp.library and the SAS team for the best Amiga C compiler. Speed and
  407. compactness of `Mostra' come from the fabulous 5.10b release. Also I
  408. would like to thank the people that encouraged me someway or helped me
  409. to find bugs, in particular Steve Tibbett, Warren Block, Tom Rokicki,
  410. Christopher A. Wichura and Loren Wilton.
  411.  
  412.    If you're reading this, you probably have access to a TeX system.
  413. Anyway, if you spent a good part of your time preparing and printing
  414. documents, I'd suggest you to take a look at AmigaTeX, a wonderful
  415. package from Radical Eye Software which is probably the best
  416. implementation of TeX you can find on any computer.
  417.  
  418.    `Mostra' is (C) 1990,1991,1992 Sebastiano Vigna and it's not public
  419. domain: it is shareware. You should send me $20 (or more, why not?) if
  420. you find it useful. Please don't send checks drawn on a US bank, they're
  421. almost impossible to cash. I'd prefer postal money orders, currency or
  422. checks drawn on an italian bank (in this order). `Mostra'  is freely
  423. distributable as long as all of its files are included in their original
  424. form without additions, deletions, or modifications of any kind, and
  425. only a nominal fee is charged for its distribution. This software is
  426. provided "AS IS" without warranty of any kind, either expressed or
  427. implied. By using `Mostra', you agree to accept the entire risk as to
  428. the quality and performance of the program.
  429.  
  430.    Comments, complaints, desiderata are welcome.
  431.  
  432.  
  433. Author Info
  434. ************
  435.  
  436.          Sebastiano Vigna
  437.          Via California 22
  438.          I-20144 Milano MI
  439.      
  440.          BIX: svigna
  441.          INTERNET: vigna@imiucca.csi.unimi.it
  442.                    vigna@ghost.sm.dsi.unimi.it
  443.          UUCP:cbmehq!cbmita!sebamiga!seba@cbmvax.cbm.commodore.com
  444.               ...{uunet|pyramid|rutgers}!cbmvax!cbmehq!cbmita!sebamiga!seba
  445.          FIDO: 2:332/607.28
  446.  
  447.